//  This product includes software developed by Denim Group, Ltd. (http://www.denimgroup.com/)
// All use and distribution of the Denim Group developed software is subject to Version 2.0
// of the Apache License (http://www.apache.org/licenses/LICENSE-2.0).

using System;
using System.Collections.Generic;
using System.Text;

namespace AppScan.DefectLogger
{
	/// <summary>
	/// Simple class holding data about a single field to use in the defect tracking system
	/// </summary>
	public class Field
	{
		public enum FieldType
		{
			Text,
			Date,
			Checkbox,
			DropDown,
			ReadOnly
		};

		private string _name;
		private string _displayName;
		private bool _visible;
		private bool _required;
		private FieldType _fieldType;
		private List<string> _possibleValues;
		private string _defaultValue;
		private int _viewOrder;

		public string Name
		{
			get { return _name; }
			set { _name = value; }
		}

		public bool Visible
		{
			get { return _visible; }
			set { _visible = value; }
		}

		public bool Required
		{
			get { return _required; }
			set { _required = value; }
		}

		public string DisplayName
		{
			get { return _displayName; }
			set { _displayName = value; }
		}

		public FieldType FType
		{
			get { return _fieldType; }
			set { _fieldType = value; }
		}

		public List<string> PossibleValues
		{
			get { return _possibleValues; }
			set { _possibleValues = value; }
		}

		public string DefaultValue
		{
			get { return _defaultValue; }
			set { _defaultValue = value; }
		}

		public int ViewOrder
		{
			get { return _viewOrder; }
			set { _viewOrder = value; }
		}
	}
}
